﻿namespace D.UtilCore.Dtos
{
    /// <summary>
    /// 接口错误信息 接口基类
    /// </summary>
    public class ErrorMessage
    {
        /// <summary>
        /// 错误码
        /// </summary>
        public EnumErrorCode errcode { get; set; }

        /// <summary>
        /// 错误信息
        /// </summary>
        public string errmsg { get; set; }
    }

    public enum EnumErrorCode
    {
        /// <summary>
        /// -1	系统繁忙，此时请开发者稍候再试
        /// </summary>
        Fail = 1,
        /// <summary>
        /// 0	请求成功
        /// </summary>
        Success = 0,
        /// <summary>
        /// AppSecret错误或者AppSecret不属于这个公众号，请开发者确认AppSecret的正确性
        /// </summary>
        AppSecretError = 40001,
        /// <summary>
        /// 请确保grant_type字段值为client_credential
        /// </summary>
        GrantTypeError = 40002,
        /// <summary>
        /// 调用接口的IP地址不在白名单中，请在接口IP白名单中进行设置。
        /// </summary>
        IpError = 40164,
        /// <summary>
        /// 此IP调用需要管理员确认,请联系管理员
        /// </summary>
        IpAdminAuth = 89503,
        /// <summary>
        /// 此IP正在等待管理员确认,请联系管理员
        /// </summary>
        IpWaitAdmin = 89501,
        /// <summary>
        /// 小时内该IP被管理员拒绝调用两次，24小时内不可再使用该IP调用
        /// </summary>
        Ip24HourReject = 89506,
        /// <summary>
        /// 1小时内该IP被管理员拒绝调用一次，1小时内不可再使用该IP调用
        /// </summary>
        IpOneHourReject = 89507,
    }
}
